Automatic calibration method for robot system

ABSTRACT

An automatic calibration method for a robot system comprises providing a ball-rod member including a connection rod and a sphere connected to a first end of the connection rod, fixing an opposite second end of the connection rod to an end execution tool mounted on a flange of a robot, and controlling the robot to move a center of the sphere to a same target point in a plurality of different poses under the guidance of a vision sensor. A transformation matrix of the center of the sphere with respect to a center of the flange is calculated based on pose data of the robot at the same target point. A transformation matrix of a center of the end execution tool with respect to the center of the flange is calculated according to a formula.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of PCT International Application No.PCT/IB2016/054946, filed on Aug. 18, 2016, which claims priority under35 U.S.C. §119 to Chinese Patent Application No. 201510530295.8, filedon Aug. 26, 2015.

FIELD OF THE INVENTION

The present invention relates to a robot system and, more particularly,to an automatic calibration method for a robot system.

BACKGROUND

Know calibration methods for robot systems generally involve artificialteaching. For example, an operator manually controls a robot of therobot system to move an end execution tool mounted on a flange of therobot to reach the same target point with a plurality of different poses(for a 6-axis robot, generally with four or more different poses). Theoperator must visually determine whether the tool is moved to the sametarget point, and consequently, calibration errors arise leading toinaccurate tool usage. A transformation matrix of the center of an endexecution tool with respect to the center of the flange of the robot isinaccurate. Furthermore, it is extremely time-consuming to repeatedlymanually control the robot to reach the same target point and visuallyverify the movement, greatly decreasing work efficiency. Moreover, therobot system must be re-calibrated every time the end execution tool isreplaced, adding to the time burden.

It is also known to automatically calibrate a robot system based on acalibrated vision sensor. In the automatic calibration method, the robotis controlled to move the center of the end execution tool mounted onthe flange of the robot to the same one target point in variousdifferent poses. The automatic calibration method greatly saves time andeffort compared with the method of visually judging whether the endexecution tool is moved to the target point. However, in the knownautomatic calibration method, it is necessary to identify the center ofthe end execution tool using the vision sensor. Generally, the endexecution tool has a very complex geometric structure and it isdifficult to identify the center of the end execution tool. Moreparticularly, when frequent replacement of the end execution tool isnecessary, the vision sensor needs to re-identify the center of the endexecution tool every time the end execution tool is replaced, which isalso very troublesome and time-consuming.

SUMMARY

An automatic calibration method for a robot system comprises providing aball-rod member including a connection rod and a sphere connected to afirst end of the connection rod, fixing an opposite second end of theconnection rod to an end execution tool mounted on a flange of a robot,and controlling the robot to move a center of the sphere to a sametarget point in a plurality of different poses under the guidance of avision sensor. A transformation matrix of the center of the sphere withrespect to a center of the flange is calculated based on pose data ofthe robot at the same target point. A transformation matrix of a centerof the end execution tool with respect to the center of the flange iscalculated according to a formula.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will now be described by way of example with reference tothe accompanying Figures, of which:

FIG. 1 is a perspective view of a robot system according to anembodiment.

DETAILED DESCRIPTION OF THE EMBODIMENT(S)

Exemplary embodiments of the present invention will be describedhereinafter in detail with reference to the attached drawings, whereinlike reference numerals refer to like elements. The present inventionmay, however, be embodied in many different forms and should not beconstrued as being limited to the embodiments set forth herein. Rather,these embodiments are provided so that the present disclosure will bethorough and complete and will fully convey the concept of thedisclosure to those skilled in the art.

A robot system according to an embodiment is shown in FIG. 1. In theshown embodiment, the robot system is a 6-axis robot system. In otherembodiments, the robot system may be any multi-freedom robot system, forexample, a four-axis robot system or a five-axis robot system. The robotsystem has a vision sensor 10, a robot 20 having a flange 21, and an endexecution tool 30 mounted on the flange 21 of the robot 20.

In order to calibrate the robot system, as shown in FIG. 1, a ball-rodmember 41, 42 is fixed to the end execution tool 30. The ball-rod member41, 42 has a connection rod 41 and a sphere 42 connected to a first endof the connection rod 41. An opposite second end of the connection rod41 is fixed to the end execution tool 30 mounted on the flange 21 of therobot 20. As shown in FIG. 1, a center axis of the connection rod 41passes through the center of the sphere 42.

Geometric parameters of the connection rod 41 and the sphere 42 of theball-rod member 41, 42 are known and constant. After the ball-rod member41, 42 is fixed to the end execution tool 30, a transformation matrix Tcof the center Tool of the end execution tool 30 with respect to thecenter of the sphere 42 may be pre-obtained. Since the geometryparameters of the connection rod 41 and the sphere 42 of the ball-rodmember are known and constant, the transformation matrix Tc also isknown and constant.

In an embodiment, the vision sensor 10 is a camera. The camera 10 isconfigured to capture an image of the sphere 42 of the ball-rod member41, 42. The camera 10 identifies an actual position of the center of thesphere 42, for example, in a vision sensor coordinate system or in aworld coordinate system. In another embodiment, the vision sensor 10 isa plurality of cameras.

The robot system further comprises a controller configured to controlthe robot system based on a program stored in a non-transitory computerreadable medium, and a processor configured to process the image dataobtained by the camera 10 such that the actual position of the center ofthe sphere 42 may be identified.

A calibration process of the robot system will now be described withreference to FIG. 1. The calibration process comprises the steps of:

-   -   providing the ball-rod member 41, 42 comprising the connection        rod 41 and the sphere 42 connected to the first end of the        connection rod 41;    -   fixing the second end of the connection rod 41 to the end        execution tool 30 mounted on the flange 21 of the robot 20;    -   controlling the robot 20 to move a center of the sphere 42 to        the same one target point in a plurality of different poses        under the guidance of the vision sensor 10. The plurality of        different poses including a pose1, a pose2, a pose3, and a pose4        in the shown embodiment;    -   calculating a transformation matrix Ts of the center of the        sphere 42 with respect to a center Tool0 of the flange 21 based        on pose data of the robot 20 at the same target point; and

calculating a transformation matrix Tt of a center Tool of the endexecution tool 30 with respect to the center Tool0 of the flange 21according to a following formula (1):Tt=Ts * Tc   (1)

The transformation matrix Tc is a transformation matrix of the centerTool of the end execution tool 30 with respect to the center of thesphere 42, and the transformation matrix Tc is known and constant.

In the controlling step, based on a position error between an actualposition of the center of the sphere 42 in a vision sensor coordinatesystem, sensed by the vision sensor 10, and a position of the targetpoint in the vision sensor coordinate system, a closed-loop feedbackcontrol on the robot 20 is performed until the position error becomeszero. The closed-loop feedback control is performed on the robot 20until the center of the sphere 42 is accurately moved to the targetpoint.

The vision sensor 10 directly identifies the actual position of thecenter of the sphere 42 in the vision sensor coordinate system. Theactual position of the center of the sphere 42 in the world coordinatesystem is indicated by X, Y, and Z values, however, the actual positionof the center of the sphere 42 in the vision sensor coordinate system isindicated by U, V, and Z values, in which U and V indicate positions ofpixel points, and Z indicates a diameter of the sphere 42. Thereby, inthe vision sensor coordinate system, the Z value is increased with theincreased diameter of the sphere 42 and decreased with the decreaseddiameter of the sphere 42.

The controlling step thereby includes the steps of:

-   -   controlling the robot 20 to move the center of the sphere 42 to        the target point within a view field of the vision sensor 10 in        a first pose pose1 under the guidance of the vision sensor 10,        and obtaining a first pose data of the robot 20 at the target        point;    -   controlling the robot 20 to move the center of the sphere 42 to        the target point in a second pose pose2 under the guidance of        the vision sensor 10, and obtaining a second pose data of the        robot 20 at the target point;    -   controlling the robot 20 to move the center of the sphere 42 to        the target point in a third pose3 under the guidance of the        vision sensor 10, and obtaining a third pose data of the robot        20 at the target point;    -   controlling the robot 20 to move the center of the sphere 42 to        the target point in a fourth pose pose4 under the guidance of        the vision sensor 10, and obtaining a fourth pose data of the        robot 20 at the target point; and    -   calculating the transformation matrix Ts of the center of the        sphere 42 with respect to the center Tool0 of the flange 21        based on the obtained first pose data, second pose data, third        pose data and fourth pose data of the robot 20.

In other embodiments, the robot 20 may accurately move the center of thesphere 42 to the same one target point in two, three, five or moredifferent poses.

Advantageously, since the ball-rod member 41, 42 is mounted to theflange 21 of the robot 20, only the center of the sphere 42 of theball-rod member 41, 42 needs to be identified by the vision sensor 10.The center of the end execution tool 30 does not need to be directlyidentified by the vision sensor 10. Since the sphere 42 has a regulargeometry, it is easy to identify its center, which improves thecalibration accuracy and efficiency of the robot system.

What is claimed is:
 1. An automatic calibration method for a robotsystem, comprising: providing a ball-rod member including a connectionrod and a sphere connected to a first end of the connection rod; fixingan opposite second end of the connection rod to an end execution toolmounted on a flange of a robot; controlling the robot to move a centerof the sphere to a same target point in a plurality of different posesunder the guidance of a vision sensor; calculating a transformationmatrix Ts of the center of the sphere with respect to a center of theflange based on pose data of the robot at the same target point; andcalculating a transformation matrix Tt of a center of the end executiontool with respect to the center of the flange according to a followingformula:Tt=Ts * Tc, wherein Tc is a transformation matrix of the center of theend execution tool with respect to the center of the sphere and isconstant.
 2. The method of claim 1, wherein the controlling stepincludes performing a closed-loop feedback control on the robot until aposition error between an actual position of the center of the spheresensed by the vision sensor in a vision sensor coordinate system and aposition of the same target point in the vision sensor coordinate systembecomes zero.
 3. The method of claim 2, wherein the vision sensor is atleast one camera and is configured to identify the center of the sphereaccording to an image of the sphere captured by the at least one camera.4. The method of claim 3, wherein the controlling step includescontrolling the robot to move the center of the sphere to the sametarget point in at least three different poses.
 5. The method of claim3, wherein the controlling step includes: controlling the robot to movethe center of the sphere to the same target point within a view field ofthe vision sensor in a first pose under the guidance of the visionsensor and obtaining a first pose data of the robot at the same targetpoint; controlling the robot to move the center of the sphere to thesame target point in a second pose under the guidance of the visionsensor and obtaining a second pose data of the robot at the same targetpoint; controlling the robot to move the center of the sphere to thesame target point in a third pose under the guidance of the visionsensor and obtaining a third pose data of the robot at the same targetpoint; controlling the robot to move the center of the sphere to thesame target point in a fourth pose under the guidance of the visionsensor and obtaining a fourth pose data of the robot at the same targetpoint; and calculating the transformation matrix Ts of the center of thesphere with respect to the center of the flange based on the obtainedfirst pose data, second pose data, third pose data and fourth pose dataof the robot.
 6. The method of claim 1, wherein the robot is amulti-axis robot.
 7. The method of claim 6, wherein the robot is afour-axis robot or a six-axis robot.